Temporal.PlainDateTime

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Das Temporal.PlainDateTime-Objekt repräsentiert ein Datum (Kalenderdatum) und eine Zeit (Uhrzeit) ohne eine Zeitzone. Es wird grundsätzlich als Kombination aus einem date (mit einem zugehörigen Kalendersystem) und einer time dargestellt.

Beschreibung

Ein PlainDateTime ist im Wesentlichen die Kombination aus einem Temporal.PlainDate und einem Temporal.PlainTime. Da Datum und Zeit nicht viel interagieren, sind alle allgemeinen Informationen zu Datumsattributen im PlainDate-Objekt dokumentiert und alle allgemeinen Informationen zu Zeitattributen im PlainTime-Objekt.

Wenn das Datumszeitpunkt einen bestimmten Moment darstellt, der über Zeitzonen hinweg konstant bleiben soll, sollten Sie das Temporal.ZonedDateTime-Objekt anstelle dessen verwenden. Verwenden Sie PlainDateTime, wenn Sie ein Ereignis darstellen müssen, das zu einem bestimmten Zeitpunkt nach der Uhrzeit stattfindet, der in verschiedenen Zeitzonen ein unterschiedlicher Moment sein kann.

RFC 9557 Format

PlainDateTime-Objekte können unter Verwendung des RFC 9557-Formats, einer Erweiterung des ISO 8601 / RFC 3339-Formats, serialisiert und geparst werden. Der String hat folgende Form (Leerzeichen sind nur zur Lesbarkeit und sollten im tatsächlichen String nicht vorhanden sein):

YYYY-MM-DD T HH:mm:ss.sssssssss [u-ca=calendar_id]
YYYY

Entweder eine vierstellige Zahl oder eine sechsstellige Zahl mit einem + oder - Zeichen.

MM

Eine zweistellige Zahl von 01 bis 12.

DD

Eine zweistellige Zahl von 01 bis 31. Die YYYY, MM und DD Komponenten können durch - oder nichts getrennt sein.

T Optional

Der Datumszeitpunkt-Trenner, der entweder T, t oder ein Leerzeichen sein kann. Vorhanden, wenn und nur wenn HH vorhanden ist.

HH Optional

Eine zweistellige Zahl von 00 bis 23. Standardwert ist 00.

mm Optional

Eine zweistellige Zahl von 00 bis 59. Standardwert ist 00.

ss.sssssssss Optional

Eine zweistellige Zahl von 00 bis 59. Kann optional gefolgt sein von einem . oder , und einer bis neun Ziffern. Standardwert ist 00. Die HH, mm und ss Komponenten können durch : oder nichts getrennt sein. Sie können entweder nur ss oder sowohl ss als auch mm weglassen, sodass die Zeit eine der drei Formen annehmen kann: HH, HH:mm oder HH:mm:ss.sssssssss.

[u-ca=calendar_id] Optional

Ersetzen Sie calendar_id durch den zu verwendenden Kalender. Siehe Intl.supportedValuesOf() für eine Liste der allgemein unterstützten Kalendertypen. Der Standardwert ist [u-ca=iso8601]. Kann ein kritisches Flag durch Voranstellen des Schlüssels mit ! haben: z. B. [!u-ca=iso8601]. Dieses Flag teilt anderen Systemen normalerweise mit, dass es nicht ignoriert werden kann, wenn sie es nicht unterstützen. Der Temporal-Parser wird einen Fehler werfen, wenn die Anmerkungen zwei oder mehr Kalenderanmerkungen enthalten und eine davon kritisch ist. Beachten Sie, dass das YYYY-MM-DD immer als ISO 8601 Kalenderdatum interpretiert und dann in den angegebenen Kalender umgewandelt wird.

Als Eingabe können Sie optional den Offset und den Zeitzonen-Identifikator im selben Format wie ZonedDateTime einbeziehen, aber sie werden ignoriert. Beachten Sie, dass der Offset nicht Z sein darf. Andere Anmerkungen im [key=value] Format werden ebenfalls ignoriert, und sie dürfen kein kritisches Flag haben.

Beim Serialisieren können Sie die Bruchteile der Sekunde, ob die Kalender-ID angezeigt wird und ob ein kritisches Flag hinzugefügt wird, konfigurieren.

Konstruktor

Temporal.PlainDateTime() Experimentell

Erstellt ein neues Temporal.PlainDateTime-Objekt durch direkte Angabe der zugrunde liegenden Daten.

Statische Methoden

Temporal.PlainDateTime.compare() Experimentell

Gibt eine Zahl (-1, 0 oder 1) zurück, die angibt, ob das erste Datumszeitpunkt vor dem zweiten liegt, mit ihm gleich ist oder nach ihm kommt. Entspricht zuerst einem Vergleich ihrer Daten, dann einem Vergleich ihrer Zeiten, falls die Daten gleich sind.

Temporal.PlainDateTime.from() Experimentell

Erstellt ein neues Temporal.PlainDateTime-Objekt aus einem anderen Temporal.PlainDateTime-Objekt, einem Objekt mit Datums- und Zeiteigenschaften oder einem RFC 9557-String.

Instanzeigenschaften

Diese Eigenschaften sind auf Temporal.PlainDateTime.prototype definiert und werden von allen Temporal.PlainDateTime-Instanzen geteilt.

Temporal.PlainDateTime.prototype.calendarId Experimentell

Gibt einen String zurück, der den Kalender repräsentiert, der verwendet wird, um das interne ISO 8601-Datum zu interpretieren.

Temporal.PlainDateTime.prototype.constructor

Die Konstrukturfunktion, die das Instanzobjekt erstellt hat. Für Temporal.PlainDateTime-Instanzen ist der Anfangswert der Temporal.PlainDateTime()-Konstruktor.

Temporal.PlainDateTime.prototype.day Experimentell

Gibt eine positive Ganzzahl zurück, die den auf 1 basierenden Tagesindex im Monat dieses Datums darstellt, der derselbe Tageszahl ist, die auf einem Kalender zu sehen wäre. Kalender-abhängig. Beginnt im Allgemeinen bei 1 und ist kontinuierlich, aber nicht immer.

Temporal.PlainDateTime.prototype.dayOfWeek Experimentell

Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Tagesindex in der Woche dieses Datums darstellt. Tage in einer Woche sind fortlaufend nummeriert von 1 bis daysInWeek, wobei jede Zahl ihrem Namen entspricht. Kalender-abhängig. 1 steht im Kalender normalerweise für Montag, auch wenn in der durch den Kalender verwendeten Lokale ein anderer Tag als erster Wochentag betrachtet wird (siehe Intl.Locale.prototype.getWeekInfo()).

Temporal.PlainDateTime.prototype.dayOfYear Experimentell

Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Tagesindex im Jahr dieses Datums darstellt. Der erste Tag dieses Jahres ist 1 und der letzte Tag ist der daysInYear. Kalender-abhängig.

Temporal.PlainDateTime.prototype.daysInMonth Experimentell

Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage im Monat dieses Datums darstellt. Kalender-abhängig.

Temporal.PlainDateTime.prototype.daysInWeek Experimentell

Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage in der Woche dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das immer 7, aber in anderen Kalendersystemen kann das von Woche zu Woche variieren.

Temporal.PlainDateTime.prototype.daysInYear Experimentell

Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das 365, oder 366 in einem Schaltjahr.

Temporal.PlainDateTime.prototype.era Experimentell

Gibt einen kalender-spezifischen Kleinbuchstaben-String zurück, der die Ära dieses Datums darstellt, oder undefined, wenn der Kalender keine Äras verwendet (z.B. ISO 8601). era und eraYear zusammen identifizieren ein Jahr in einem Kalender eindeutig, ähnlich wie year. Kalender-abhängig. Für den Gregorianischen Kalender ist es entweder "gregory" oder "gregory-inverse".

Temporal.PlainDateTime.prototype.eraYear Experimentell

Gibt eine nicht-negative Ganzzahl zurück, die das Jahr dieses Datums innerhalb der Ära darstellt, oder undefined, wenn der Kalender keine Äras verwendet (z.B. ISO 8601). Der Jahrindex beginnt üblicherweise bei 1 (häufiger) oder 0, und Jahre in einer Ära können mit der Zeit abnehmen (z.B. Gregorianisch v. Chr.). era und eraYear zusammen identifizieren ein Jahr in einem Kalender eindeutig, ähnlich wie year. Kalender-abhängig.

Temporal.PlainDateTime.prototype.hour Experimentell

Gibt eine Ganzzahl von 0 bis 23 zurück, die die Stundenkomponente dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.inLeapYear Experimentell

Gibt einen booleschen Wert zurück, der angibt, ob dieses Datum in einem Schaltjahr liegt. Ein Schaltjahr ist ein Jahr, das mehr Tage hat (aufgrund eines Schalttages oder Schaltmonats) als ein gewöhnliches Jahr. Kalender-abhängig.

Temporal.PlainDateTime.prototype.microsecond Experimentell

Gibt eine Ganzzahl von 0 bis 999 zurück, die die Mikrosekundenkomponente (10-6 Sekunden) dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.millisecond Experimentell

Gibt eine Ganzzahl von 0 bis 999 zurück, die die Millisekundenkomponente (10-3 Sekunden) dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.minute Experimentell

Gibt eine Ganzzahl von 0 bis 59 zurück, die die Minutenkomponente dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.month Experimentell

Gibt eine positive Ganzzahl zurück, die den auf 1 basierenden Monatsindex im Jahr dieses Datums darstellt. Der erste Monat dieses Jahres ist 1, und der letzte Monat ist der monthsInYear. Kalender-abhängig. Beachten Sie, dass im Gegensatz zu Date.prototype.getMonth() der Index auf 1 basiert. Wenn der Kalender Schaltmonate hat, dann kann der Monat mit dem gleichen monthCode verschiedene month-Indizes für verschiedene Jahre haben.

Temporal.PlainDateTime.prototype.monthCode Experimentell

Gibt einen kalender-spezifischen String zurück, der den Monat dieses Datums darstellt. Kalender-abhängig. Normalerweise ist es M plus einer zweistelligen Monatsnummer. Für Schaltmonate ist es der Code des vorherigen Monats gefolgt von L. Wenn der Schaltmonat der erste Monat des Jahres ist, lautet der Code M00L.

Temporal.PlainDateTime.prototype.monthsInYear Experimentell

Gibt eine positive Ganzzahl zurück, die die Anzahl der Monate im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das immer 12, aber in anderen Kalendersystemen kann das variieren.

Temporal.PlainDateTime.prototype.nanosecond Experimentell

Gibt eine Ganzzahl von 0 bis 999 zurück, die die Nanosekundenkomponente (10-9 Sekunden) dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.second Experimentell

Gibt eine Ganzzahl von 0 bis 59 zurück, die die Sekundenkomponente dieser Zeit darstellt.

Temporal.PlainDateTime.prototype.weekOfYear Experimentell

Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Wochenindex im yearOfWeek dieses Datums darstellt, oder undefined, wenn der Kalender kein klar definiertes Wochensystem hat. Die erste Woche des Jahres ist 1. Kalender-abhängig. Beachten Sie, dass für ISO 8601 die ersten und letzten Tage des Jahres der letzten Woche des Vorjahres oder der ersten Woche des folgenden Jahres zugerechnet werden können.

Temporal.PlainDateTime.prototype.year Experimentell

Gibt eine Ganzzahl zurück, die die Anzahl der Jahre dieses Datums relativ zum Beginn eines kalender-spezifischen Epochejahres darstellt. Kalender-abhängig. Üblicherweise ist das Jahr 1 entweder das erste Jahr der jüngsten Ära oder das ISO 8601-Jahr 0001. Wenn die Epoche in der Jahresmitte liegt, hat dieses Jahr vor und nach dem Beginn der Epoche denselben Wert.

Temporal.PlainDateTime.prototype.yearOfWeek Experimentell

Gibt eine Ganzzahl zurück, die das Jahr darstellt, das mit der weekOfYear dieses Datums gepaart werden soll, oder undefined, wenn der Kalender kein klar definiertes Wochensystem hat. Kalender-abhängig. Normalerweise ist dies das Jahr des Datums, aber für ISO 8601 können die ersten und letzten Tage des Jahres der letzten Woche des Vorjahres oder der ersten Woche des folgenden Jahres zugerechnet werden, was dazu führt, dass yearOfWeek um 1 abweicht.

Temporal.PlainDateTime.prototype[Symbol.toStringTag]

Der Anfangswert der [Symbol.toStringTag]-Eigenschaft ist der String "Temporal.PlainDateTime". Diese Eigenschaft wird in Object.prototype.toString() verwendet.

Instanzmethoden

Temporal.PlainDateTime.prototype.add() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt um die angegebene Dauer vorwärts verschoben darstellt (in einer Form, die durch Temporal.Duration.from() konvertierbar ist).

Temporal.PlainDateTime.prototype.equals() Experimentell

Gibt true zurück, wenn dieses Datumszeitpunkt im Wert einem anderen Datumszeitpunkt (in einer Form, die durch Temporal.PlainDateTime.from() konvertierbar ist) entspricht, und false ansonsten. Sie werden sowohl anhand ihrer Datums- als auch Zeitwerte und ihrer Kalender verglichen, sodass zwei Datumszeitpunkte aus verschiedenen Kalendern von Temporal.PlainDateTime.compare() als gleich betrachtet werden können, aber nicht von equals().

Temporal.PlainDateTime.prototype.round() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt auf die angegebene Einheit gerundet darstellt.

Temporal.PlainDateTime.prototype.since() Experimentell

Gibt ein neues Temporal.Duration-Objekt zurück, das die Dauer von einem anderen Datumszeitpunkt (in einer Form, die durch Temporal.PlainDateTime.from() konvertierbar ist) bis zu diesem Datumszeitpunkt darstellt. Die Dauer ist positiv, wenn der andere Datumszeitpunkt vor diesem liegt, und negativ, wenn danach.

Temporal.PlainDateTime.prototype.subtract() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt um die angegebene Dauer rückwärts verschoben darstellt (in einer Form, die durch Temporal.Duration.from() konvertierbar ist).

Temporal.PlainDateTime.prototype.toJSON() Experimentell

Gibt einen String zurück, der dieses Datumszeitpunkt im selben RFC 9557 Format darstellt, wie beim Aufruf von toString(). Soll implizit von JSON.stringify() aufgerufen werden.

Temporal.PlainDateTime.prototype.toLocaleString() Experimentell

Gibt einen String mit einer sprachabhängigen Darstellung dieses Datumszeitpunktes zurück.

Temporal.PlainDateTime.prototype.toPlainDate() Experimentell

Gibt ein neues Temporal.PlainDate-Objekt zurück, das den Datumsanteil (Jahr, Monat, Tag) dieses Datumszeitpunktes im selben Kalendersystem darstellt.

Temporal.PlainDateTime.prototype.toPlainTime() Experimentell

Gibt ein neues Temporal.PlainTime-Objekt zurück, das den Zeitanteil (Stunde, Minute, Sekunde und Untersekundenkomponenten) dieses Datumszeitpunktes darstellt.

Temporal.PlainDateTime.prototype.toString() Experimentell

Gibt einen String zurück, der dieses Datumszeitpunkt im RFC 9557 Format darstellt.

Temporal.PlainDateTime.prototype.toZonedDateTime() Experimentell

Gibt eine neue Temporal.ZonedDateTime-Instanz zurück, die dasselbe Datumszeitpunkt wie dieses einfache Datumszeitpunkt darstellt, jedoch in der angegebenen Zeitzone.

Temporal.PlainDateTime.prototype.until() Experimentell

Gibt ein neues Temporal.Duration-Objekt zurück, das die Dauer von diesem Datumszeitpunkt zu einem anderen Datumszeitpunkt (in einer Form konvertierbar durch Temporal.PlainDateTime.from()) darstellt. Die Dauer ist positiv, wenn der andere Datumszeitpunkt nach diesem liegt, und negativ, wenn davor.

Temporal.PlainDateTime.prototype.valueOf() Experimentell

Wirft einen TypeError, der verhindert, dass Temporal.PlainDateTime-Instanzen implizit in primitive Werte konvertiert werden, wenn sie in arithmetischen oder Vergleichsoperationen verwendet werden.

Temporal.PlainDateTime.prototype.with() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt mit einigen Feldern darstellt, die durch neue Werte ersetzt wurden.

Temporal.PlainDateTime.prototype.withCalendar() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt im neuen Kalendersystem interpretiert darstellt.

Temporal.PlainDateTime.prototype.withPlainTime() Experimentell

Gibt ein neues Temporal.PlainDateTime-Objekt zurück, das dieses Datumszeitpunkt mit dem Zeitanteil vollständig ersetzt durch die neue Zeit darstellt (in einer Form, die durch Temporal.PlainTime.from() konvertierbar ist).

Spezifikationen

Specification
Temporal
# sec-temporal-plaindatetime-objects

Browser-Kompatibilität

Siehe auch